#include "ex8.h"
#include <string.h>
sir::sir()
{
        (*this).cuvant[0]='\0';
}
sir::sir(char d[100])
{
        strcpy((*this).cuvant,d);
}
void sir::setCuvant(char d[100])
{
        strcpy((*this).cuvant,d);
}       
char sir::getCar(int d)
{
        char s;
        s=(*this).cuvant[d];
        return s;
}
void sir::setCar(char d)
{
        int i=strlen((*this).getCuvant());
        (*this).cuvant[i]=d;
        (*this).cuvant[i+1]='\0';
}
char* sir::getCuvant()
{
        return (*this).cuvant;
}
ostream& operator<<(ostream& cout,sir D)
{
        int i=0;
        while(D.getCar(i)!='\0')
                {
                std::cout<<D.getCar(i);         
                i++;
                }
        std::cout<<endl;
        return cout;
}

void sir::operator=(sir S)
{
        int i=0;
        while(S.getCar(i)!='\0')
                {
                (*this).cuvant[i]=S.getCar(i);
                i++;
                }
        (*this).cuvant[i]='\0';
}

tablou::tablou()
{
        for(int i=0;i<100;i++)
                (*this).pozitie[i]=sir();
}
void tablou::addPoz(sir S)
{
        (*this).pozitie[z]=S;
        z++;
}
sir tablou::getSir(int d)
{
        sir D=sir();
        D=(*this).pozitie[d];
        return D;               
}
void tablou::sorteaza()
{
        sir aux=sir();
        for(int i=0;i<z;i++)
                for(int j=0;j<z;j++)
                        if(strcmp((*this).pozitie[i].getCuvant(),(*this).pozitie[j].getCuvant())<0)
                                {
                                aux.setCuvant((*this).pozitie[i].getCuvant());
                                (*this).pozitie[i].setCuvant((*this).pozitie[j].getCuvant());
                                (*this).pozitie[j].setCuvant(aux.getCuvant());
                                }
}
sir sir::operator+(sir D)
{
        sir M=sir();
  M.setCuvant((*this).getCuvant());
        for(int j=strlen(M.getCuvant())-1,i=0;D.getCar(i)!='\0';i++,j++)
                M.setCar(D.getCar(i));
        return M;
}

